home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / spiele / gnuchess / src / amiga / install < prev    next >
Text File  |  1995-08-13  |  15KB  |  594 lines

  1. ;;; -*- Lisp-Interaction -*-      ;;;  Version: 14-Aug-95                ;;;
  2. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  3. ;;;
  4. ;;;  GNU Chess Installation script
  5. ;;;  Copyright (C)  1995,   Jochen Wiedmann
  6. ;;;
  7. ;;;  This program is free software; you can redistribute it and/or modify
  8. ;;;  it under the terms of the GNU General Public License as published by
  9. ;;;  the Free Software Foundation; either version 2 of the License, or
  10. ;;;  (at your option) any later version.
  11. ;;;
  12. ;;;  This program is distributed in the hope that it will be useful,
  13. ;;;  but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. ;;;  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  15. ;;;  GNU General Public License for more details.
  16. ;;;
  17. ;;;  You should have received a copy of the GNU General Public License
  18. ;;;  along with this program; if not, write to the Free Software
  19. ;;;  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  20. ;;;
  21. ;;;
  22. ;;;  Author:   Jochen Wiedmann
  23. ;;;            Am Eisteich 9
  24. ;;;            72555 Metzingen
  25. ;;;            Germany
  26. ;;;
  27. ;;;            Phone: (0049) +7123 / 14881
  28. ;;;            Internet: jochen.wiedmann@zdv.uni-tuebingen.de
  29. ;;;
  30. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  31.  
  32.  
  33. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  34. ;;;
  35. ;;;  Variable settings
  36. ;;;
  37. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  38. (set installVersion "4.0.pl75")
  39. (set installName "GNU Chess")
  40. ;(set installSubDir (cat installName "-" installVersion))
  41. (set installSubDir "GNU Chess")
  42. (set minOsVersion 37)
  43.  
  44.  
  45. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  46. ;;;
  47. ;;;  SelectInstallDir procedure
  48. ;;;
  49. ;;;  Allows the user to select an installation directory (full path),
  50. ;;;  which will be stored in the installDir variable.
  51. ;;;
  52. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  53. (procedure SelectInstallDir
  54.     (set installDir-Parent (expandpath (askdir
  55.     (prompt "Please select the installation directory. "
  56.         "A drawer " installSubDir " will be created."
  57.     )
  58.     (help installName " is installed in a separate directory. "
  59.           "A typical place is something like `Work:" installSubDir
  60.           "' or something similar. In this example you should select "
  61.           "the directory `Work:'.\n\n"
  62.           @askdir-help)
  63.     (default @default-dest)
  64.     (newpath)
  65.     )))
  66.  
  67.     (set installDir (tackon installDir-Parent installSubDir))
  68.     (set @default-dest installDir)
  69.     (message "Installing in " installDir)
  70. )
  71.  
  72.  
  73. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  74. ;;;
  75. ;;;  SelectBinaries procedure
  76. ;;;
  77. ;;;  Allows the user to select the binaries that should be installed.
  78. ;;;
  79. ;;;  Sets: installGnuChessBinary
  80. ;;;        installGnuChessXBinary
  81. ;;;        installGnuChessNBinary
  82. ;;;        installGnuChessRBinary
  83. ;;;        installGnuAnBinary
  84. ;;;        installEcoBinaries
  85. ;;;        installPostScriptBinaries
  86. ;;;
  87. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  88. (procedure SelectBinaries
  89.  
  90.     (set selectedBinaries (askoptions
  91.     (prompt "Select the binaries to install.")
  92.     (help "gnuchessx is an AmyBoard client. By using AmyBoard "
  93.           "you will get a mouse driven GUI. Typical users "
  94.           "won't be interested in other versions than "
  95.           "gnuchessx.\n\n"
  96.           "gnuchess and gnuchessn have curses based displays: "
  97.           "The program will use Ascii characters to draw a "
  98.           "chessboard. gnuchessn is somewhat more fancy than "
  99.           "gnuchess: It uses inverse characters to separate "
  100.           "white and black squares and pieces.\n\n"
  101.           "gnuchessr is the least comfortable version of GNU "
  102.           "Chess: You won't use it for anything else than "
  103.           "batch jobs.\n\n"
  104.           "gnuan is a curses based tool which helps you in "
  105.           "analyzing a certain game or a position.\n\n"
  106.           "The ECO tools help you to build the file "
  107.           "gnuchess.eco which is used by GNU Chess to "
  108.           "identify the ECO number of a game.\n\n"
  109.           "The PostScript tools allow to print the positions "
  110.           "of a game in PostScript format.\n\n"
  111.           @askoptions-help
  112.     )
  113.     (choices "gnuchessx (AmyBoard client)"
  114.          "gnuchess  (Simple curses version)"
  115.          "gnuchessn (Fancy curses version)"
  116.          "gnuchessr (Ascii version)"
  117.          "gnuan     (Analyzing tool)"
  118.          "ECO tools"
  119.          "PostScript tools"
  120.     )
  121.     (default 1)
  122.     ))
  123.  
  124.     (set installGnuChessXBinary 0)
  125.     (if (BITAND selectedBinaries 1)
  126.     (   (set installGnuChessXBinary 1)
  127.     ))
  128.  
  129.     (set installGnuChessBinary 0)
  130.     (if (BITAND selectedBinaries 2)
  131.     (   (set installGnuChessBinary 1)
  132.     ))
  133.  
  134.     (set installGnuChessNBinary 0)
  135.     (if (BITAND selectedBinaries 4)
  136.     (   (set installGnuChessBinary 1)
  137.     ))
  138.  
  139.     (set installGnuChessRBinary 0)
  140.     (if (BITAND selectedBinaries 8)
  141.     (   (set installGnuChessRBinary 1)
  142.     ))
  143.  
  144.     (set installGnuAnBinary 0)
  145.     (if (BITAND selectedBinaries 16)
  146.     (   (set installGnuAnBinary 1)
  147.     ))
  148.  
  149.     (set installEcoBinaries 0)
  150.     (if (BITAND selectedBinaries 32)
  151.     (   (set installEcoBinaries 1)
  152.     ))
  153.  
  154.     (set installPostScriptBinaries 0)
  155.     (if (BITAND selectedBinaries 64)
  156.     (   (set installPostScriptBinaries 1)
  157.     ))
  158.  
  159.     (set installCursesBinaries 0)
  160.     (if (BITAND 22 selectedBinaries)
  161.     (   (set installCursesBinaries 1)
  162.     ))
  163. )
  164.  
  165.  
  166. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  167. ;;;
  168. ;;;  CheckOsVersion procedure
  169. ;;;
  170. ;;;  Aborts, if OS version is lower than the variable minOsVersion.
  171. ;;;  Sets osVersion variable.
  172. ;;;
  173. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  174. (procedure CheckOsVersion
  175.     (set osVersion (/ (getversion "exec.library" (resident)) 65536))
  176.     (if (< osVersion minOsVersion)
  177.     (   (abort "Sorry, " installName
  178.            " needs Kickstart/Workbench 2.04 or higher.")
  179.     ))
  180. )
  181.  
  182.  
  183. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  184. ;;;
  185. ;;;  ShowCopyrightMessage procedure
  186. ;;;
  187. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  188. (procedure ShowCopyrightMessage
  189.     (message installName ": The GNU project's chess program\n\n"
  190.     "V" installVersion " © 1995 Free Software Foundation  \n\n"
  191.     "This program is FREE SOFTWARE; you can redistribute it and/or "
  192.     "modify it under the terms of the GNU General Public License as "
  193.     "published by the Free Software Foundation; either version 2 "
  194.     "or any later version.\n\n"
  195.     "This program is distributed in the hope that it will be useful, "
  196.     "but WITHOUT ANY WARRANTY! See the GNU General Public License "
  197.     "(in the file COPYING) for details."
  198.     )
  199. )
  200.  
  201.  
  202. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  203. ;;;
  204. ;;;  CreateDrawer procedure
  205. ;;;
  206. ;;;  Creates a new drawer.
  207. ;;;
  208. ;;;  Uses: drawerName    drawer's name
  209. ;;;
  210. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  211. (procedure CreateDrawer
  212.  
  213.     (if (<> (exists drawerName) 2)
  214.     (   (makedir drawerName
  215.         (prompt ("Creating drawer %s " drawerName))
  216.         (infos)
  217.     )
  218.     ))
  219. )
  220.  
  221.  
  222.  
  223. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  224. ;;;
  225. ;;;  CreateIcon procedure
  226. ;;;
  227. ;;;  Creates an icon
  228. ;;;
  229. ;;;  Uses: iconName     path of icon to create (".info" removed)
  230. ;;;        iconSource   path of icon to use
  231. ;;;
  232. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  233. (procedure CreateIcon
  234.  
  235.     (set iconFullName (cat iconName ".info"))
  236.  
  237.     (if (NOT (exists iconFullName))
  238.     (   (if (exists iconSource)
  239.     (   (transcript "Creating icon " iconFullName)
  240.         (copyfiles
  241.         (prompt "Copying " (fileonly iconName) " icon ...")
  242.         (source iconSource)
  243.         (dest (pathonly iconName))
  244.         (newname (fileonly iconFullName))
  245.         (optional "oknodelete" "askuser")
  246.         )
  247.     )
  248.     (   (transcript iconSource " not found, cannot create "
  249.             iconFullName
  250.         )
  251.     ))
  252.     )
  253.     (   (transcript "Using existing icon " iconFullName)
  254.     ))
  255. )
  256.  
  257.  
  258. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  259. ;;;;
  260. ;;;;  CreateDocIcon procedure
  261. ;;;;
  262. ;;;;  Creates a docfile's icon.
  263. ;;;;
  264. ;;;;  Uses:  installDir   path of installation directory
  265. ;;;;         docFile      docfile's name
  266. ;;;;
  267. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  268. (procedure CreateDocIcon
  269.  
  270.     (set iconName docFile)
  271.     (set iconSource "doc/doc.info")
  272.     (CreateIcon)
  273.  
  274.     (if (< osVersion 39)
  275.     (   (tooltype
  276.         (prompt "Changing tooltype of " iconName ...)
  277.         (dest docFile)
  278.         (setdefaulttool "Sys:Utilities/More")
  279.         (noposition)
  280.     )
  281.     )
  282.     (   (tooltype
  283.         (prompt "Changing tooltype of " iconName ...)
  284.         (dest docFile)
  285.         (setdefaulttool "Sys:Utilities/MultiView")
  286.         (settooltype "FILETYPE" "TEXT|ASCII")
  287.         (noposition)
  288.     )
  289.     ))
  290. )
  291.  
  292.  
  293. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  294. ;;;
  295. ;;;  CreateInstallationDrawers
  296. ;;;
  297. ;;;  Creates the drawers required for the installation
  298. ;;;
  299. ;;;  Uses: installDir   installation directory
  300. ;;;
  301. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  302. (procedure CreateInstallationDrawers
  303.  
  304.     (if (<> installDir (expandPath ""))
  305.     (   (set n 0)
  306.     (while (set drawerName (select n installDir
  307.                      installDocDir
  308.                      installLibDir
  309.                      ""
  310.            ))
  311.     (   (CreateDrawer)
  312.         (set n (+ n 1))
  313.     ))         
  314.     ))
  315. )
  316.  
  317.  
  318. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  319. ;;;
  320. ;;;  CopyBinary
  321. ;;;
  322. ;;;  Copies one binary to the installation directory.
  323. ;;;
  324. ;;;  Uses: installDir   installation directory
  325. ;;;        binFile      binary to copy
  326. ;;;
  327. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  328. (procedure CopyBinary
  329.  
  330.     (if (<> installDir (expandPath ""))
  331.     (   (copyfiles
  332.         (prompt "Copying binaries ...")
  333.         (source binFile)
  334.         (dest installDir)
  335.         (optional "force" "askuser")
  336.     )
  337.     ))
  338. )
  339.  
  340.  
  341. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  342. ;;;
  343. ;;;  CopyBinaries
  344. ;;;
  345. ;;;  Copies required binaries to the installation directory.
  346. ;;;
  347. ;;;  Uses: installDir   installation directory
  348. ;;;
  349. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  350. (procedure CopyBinaries
  351.  
  352.     (if installGnuChessBinary
  353.     (   (set binFile "gnuchess")
  354.     (CopyBinary)
  355.     ))
  356.  
  357.     (if installGnuChessXBinary
  358.     (   (set binFile "gnuchessx")
  359.     (CopyBinary)
  360.     ))
  361.  
  362.     (if installGnuChessNBinary
  363.     (   (set binFile "gnuchessn")
  364.     (CopyBinary)
  365.     ))
  366.  
  367.     (if installGnuChessRBinary
  368.     (   (set binFile "gnuchessr")
  369.     (CopyBinary)
  370.     ))
  371.  
  372.     (if installGnuAnBinary
  373.     (   (set binFile "gnuan")
  374.     (CopyBinary)
  375.     ))
  376.  
  377.     (if installEcoBinaries
  378.     (   (set binFile "ecor")
  379.     (CopyBinary)
  380.     (set binFile "ecocvt")
  381.     (CopyBinary)
  382.     (set binFile "ecosort")
  383.     (CopyBinary)
  384.     (set binFile "binsort")
  385.     (CopyBinary)
  386.     ))
  387.  
  388.     (if installPostScriptBinaries
  389.     (   (set binFile "game")
  390.     (CopyBinary)
  391.     (set binFile "postprint")
  392.     (CopyBinary)
  393.     ))
  394. )
  395.  
  396.  
  397. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  398. ;;;
  399. ;;;  CopyLibFiles
  400. ;;;
  401. ;;;  Copies required files to the lib directory.
  402. ;;;
  403. ;;;  Uses: installLibDir
  404. ;;;
  405. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  406. (procedure CopyLibFiles
  407.  
  408.     (if (<> installDir (expandPath ""))
  409.     (   (set n 0)
  410.     (while (set libFile (select n "gnuchess.data"
  411.                       "gnuchess.eco"
  412.                       "gnuchess.lang"
  413.                       ""
  414.            ))
  415.     (   (copyfiles
  416.         (prompt "Copying other needed files ...")
  417.         (source (tackon "lib" libFile))
  418.         (dest installLibDir)
  419.         (optional "force" "askuser")
  420.         )
  421.         (set n (+ n 1))
  422.     ))
  423.     ))
  424. )
  425.  
  426.  
  427. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  428. ;;;
  429. ;;;  CopyDocFile
  430. ;;;
  431. ;;;  Copies one doc file to the doc directory
  432. ;;;
  433. ;;;  Uses: installDocDir
  434. ;;;
  435. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  436. (procedure CopyDocFile
  437.  
  438.     (if (<> installDir (expandPath ""))
  439.     (   (copyfiles
  440.         (prompt "Copying doc files ...")
  441.         (source (tackon "doc" docFile))
  442.         (dest installDocDir)
  443.         (optional "oknodelete" "askuser")
  444.     )
  445.     ))
  446. )
  447.  
  448.  
  449. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  450. ;;;
  451. ;;;  CopyDocFiles
  452. ;;;
  453. ;;;  Copies doc files to the doc directory
  454. ;;;
  455. ;;;  Uses: installDocDir
  456. ;;;
  457. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  458. (procedure CopyDocFiles
  459.  
  460.     (set docFile "ARTICLE")
  461.     (CopyDocFile)
  462.     (set docFile "ARTICLE.2")
  463.     (CopyDocFile)
  464.     (set docFile "ChangeLog")
  465.     (CopyDocFile)
  466.     (set docFile "COPYING")
  467.     (CopyDocFile)
  468.     (set docFile "GENERAL")
  469.     (CopyDocFile)
  470.     (set docFile "HEURISTICS")
  471.     (CopyDocFile)
  472.     (set docFile "MOVE-GEN")
  473.     (CopyDocFile)
  474.     (set docFile "PORTING")
  475.     (CopyDocFile)
  476.     (set docFile "README.output")
  477.     (CopyDocFile)
  478.     (set docFile "TODO")
  479.     (CopyDocFile)
  480.  
  481.     (if (OR installGnuChessBinary
  482.         (OR installGnuChessXBinary
  483.         (OR installGnuChessNBinary installGnuChessRBinary)))
  484.     (   (set docFile "gnuchess.txt")
  485.     (CopyDocFile)
  486.     (set docFile "gnuchess.6")
  487.     (CopyDocFile)
  488.     ))
  489.     (if installGnuAnBinary
  490.     (   (set docFile "gnuan.6")
  491.     (CopyDocFile)
  492.     (set docFile "gnuan.hlp")
  493.     (CopyDocFile)
  494.     ))
  495.     (if installPostScriptBinaries
  496.     (   (set docFile "game.6")
  497.     (CopyDocFile)
  498.     (set docFile "postprint.6")
  499.     (CopyDocFile)
  500.     (set docFile "README.font")
  501.     (CopyDocFile)
  502.     ))
  503.  
  504.     (set n 0)
  505.     (while (set docFile (select n "COPYING"
  506.                   "gnuchess.txt"
  507.                   ""
  508.        ))
  509.     (   (CopyDocFile)
  510.     (set docFile (tackon installDir docFile))
  511.     (CreateDocIcon)
  512.     (set n (+ n 1))
  513.     ))
  514. )
  515.  
  516.  
  517. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  518. ;;;
  519. ;;;  CreateEnvironmentVars procedure
  520. ;;;
  521. ;;;  Creates environment variable CURSESTYPE
  522. ;;;
  523. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  524. (procedure CreateEnvironmentVars
  525.  
  526.     (if installCursesBinaries
  527.     (   (if (NOT (askbool
  528.         (prompt "Should the curses based binaries open an "
  529.             "own screen?"
  530.         )
  531.         (help "You have selected to install one or more curses "
  532.               "based binaries. These may either open an own "
  533.               "screen or run from the CLI. Select \"yes\", if "
  534.               "you want a separate screen, \"no\" otherwise.\n\n"
  535.               @askbool-help
  536.         )
  537.         (default 0)
  538.         ))
  539.     (   (textfile
  540.         (prompt "Creating an environment variable CURSESTYPE.")
  541.         (help "An environment variable CURSESTYPE tells "
  542.               "curses, that you want a separate screen. "
  543.               "Select \"yes\", if you want me to create this "
  544.               "variable.\n\n"
  545.               @textfile-help
  546.         )
  547.         (dest "ENVARC:CURSESTYPE")
  548.         (append "ansi")
  549.         (confirm)
  550.         )
  551.         (copyfiles
  552.         (prompt "Creating an environment variable CURSESTYPE.")
  553.         (source "ENVARC:CURSESTYPE")
  554.         (dest "ENV:")
  555.         (optional "oknodelete" "askuser")
  556.         )
  557.     ))
  558.     ))
  559. )
  560.  
  561.  
  562. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  563. ;;;
  564. ;;;  main program
  565. ;;;
  566. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  567.  
  568. (transcript "Installing " installName ", Version " installVersion ".")
  569. (CheckOsVersion)
  570. (ShowCopyrightMessage)
  571.  
  572. (SelectInstallDir)
  573. (set installLibDir (tackon installDir "lib"))
  574. (set installDocDir (tackon installDir "doc"))
  575. (complete 10)
  576.  
  577. (SelectBinaries)
  578. (complete 20)
  579.  
  580. (CreateInstallationDrawers)
  581. (complete 30)
  582.  
  583. (CopyBinaries)
  584. (complete 60)
  585.  
  586. (CopyLibFiles)
  587. (complete 80)
  588.  
  589. (CopyDocFiles)
  590. (complete 90)
  591.  
  592. (CreateEnvironmentVars)
  593. (complete 100)
  594.